/**
 * Created by L.jp
 * Description:
 * User: 86189
 * Date: 2021-10-16
 * Time: 21:31
 */
public class VersionNum {
    public  static int compareVersion(String version1, String version2) {
        /*
        法一：
        //字符串分隔函数split
        String[] str1=version1.split("\\.");
        String[] str2=version2.split("\\.");
        for(int i=0;i<version1.length() || i<version2.length();i++){
            int x=0;
            int y=0;
            if(i<str1.length){
                x=Integer.parseInt(str1[i]);//字符串转化为数字，Integer.parseInt函数
            }
            if(i<str2.length){
                y=Integer.parseInt(str2[i]);
            }
            if(x<y){
                return -1;
            }
            if(x>y){
                return 1;

            }
        }
        return 0;

         */
          //法二
            int n = version1.length(), m = version2.length();
            int i = 0, j = 0;
            while (i < n || j < m) {
                int x = 0;
                for (; i < n && version1.charAt(i) != '.'; ++i) {
                    x = x * 10 + version1.charAt(i) - '0';//字符减去0字符就是对应整型,每加一位数就要乘10，因为不包含'.'号，所以就是十进制数字了
                }
                ++i; // 跳过点号
                int y = 0;
                for (; j < m && version2.charAt(j) != '.'; ++j) {
                    y = y * 10 + version2.charAt(j) - '0';
                }
                ++j; // 跳过点号
                if (x != y) {
                    return x > y ? 1 : -1;
                }
            }
            return 0;
        }



    public static void main(String[] args) {
        String s="1.1.1.0";
        String c="1.0001.02.2";
        System.out.println(compareVersion(s,c));
    }
}
